The present disclosure generally relates to computer animation, and more specifically to dynamically creating tetrahedral meshes using centerlines on animated characters.
With the widespread availability of computers, computer graphics artists and animators can rely upon computers to assist in production process for creating animations and computer-generated imagery (CGI). This may include using computers to have physical models be represented by virtual models in computer memory. Typically, two-dimensional (2D) or three-dimensional (3D) computer-aided animation combines 2D/3D models of objects and programmed movement of one or more of the models. In 3D computer animation, the first step is typically the object modeling process. Objects can be sculpted much like real clay or plaster, working from general forms to specific details, for example, with various sculpting tools. Models may then be constructed, for example, out of geometrical vertices, faces, and edges in a 3D coordinate system to represent the objects. These virtual models can then be manipulated using computers to, for example, simulate physics, design aesthetic actions such as poses or other deformations, create lighting, coloring and paint, or the like, of characters or other elements of a computer animation display.
Meshes of triangles or tetrahedra have many applications, including interpolation, rendering, and numerical methods such as the finite element method, fluid simulations, medical simulations, and the like. Most such applications demand more than just a triangulation of an object or domain, such as a polygonal mesh. To ensure accurate results, the triangles or tetrahedra must be “well shaped” and thus satisfy various criteria and/or constraints, such as having small aspect ratios, conformity to original mesh boundaries, minimum tetrahedral (tet) size, bounds on their smallest and largest angles, and the like.
Many different methods for generating tetrahedral volumes from an object or domain exist. These methods include Delaunay triangulation, red-green refinement, advancing front methods, FCC/BCC lattice refinement, and the like. Many of these methods are designed to generate tetrahedral (tet) volumes appropriate for a particular purpose (e.g., finite element simulation) and therefore create volumes satisfying the criteria and/or constraints.
The choice of the method of construction for a given application can be determined by a variety of factors. These factors may include the computational costs of computing a tet volume for an object or domain, the suitability of the tet volume to the application, the cost of updating it in applications in which the objects can move or change shape or size, the cost of determining intersections, and any desired precision tests. Sophisticated volumes generally allow for less void space but are more computationally expensive and therefore are unsuited for some applications. Less structured volumes are less computationally expensive but again can be unsuited to some application.
Therefore, it is desirable to provide new systems and methods for rapidly generating tetrahedral volumes in character animation.